Providing alternative advertising content

ABSTRACT

Methods and systems of providing alternative targeted advertising (TAD) content are shown and disclosed. In one embodiment, the method includes outputting a first TAD content during a TAD window, and receiving at least one user input requesting different TAD content during the TAD window. The method additionally includes outputting the different TAD content instead of the first TAD content during the TAD window after at least one predetermined amount of time from start of the TAD window in response to the at least one user input. In some embodiments, the method may further include re-outputting the first TAD content instead of the different TAD content during the TAD window in response to receiving user input requesting different TAD content when the predetermined amount of time associated with each of the different TAD content already has elapsed before receiving the user input.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional PatentApplication Ser. No. 63/074,013 filed Sep. 3, 2020.

BACKGROUND

The subject matter of this application relates to providing advertisingcontent in multimedia streams, in particular systems and methods ofproviding alternative advertising content, such as targeted advertisingcontent, when requested by users and/or customers.

Targeted Advertising (TAD) technology is used by Multiple SystemOperators (MSOs) and content producers to enhance revenue generation.For example, several MSOs use splicing or tuned transitions to jump fromnetwork content to advertisement content and vice-versa. Multipleadvertisements are used for a particular advertisement time slot, whichare intended or targeted for different customer set top boxes based onthe customers' profiles. The multiple advertisements may be in the samechannel transport streams and/or may be in different channels.Advertisement client software applications (or TAD applications)generally tune to an advertisement-based user profile or MSO setpreference when the time slot or TAD window for the advertisementarrives. If the customer attempts to tune to a different channel duringthe TAD window, the TAD application may force the customer to stay onthe TAD channel and may tune to the customer's request channel only whenthe TAD window has passed or has ended.

However, the customer or user is not always interested in the TADcontent pre-selected for a particular TAD window, such as based on thecustomer's profile. What is desired, therefore, are systems and/ormethods of providing alternative advertising content, such as targetedadvertising, that may be provided when requested by the customer.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of the invention, and to show how the samemay be carried into effect, reference will now be made, by way ofexample, to the accompanying drawings, in which:

FIG. 1 is a high-level block diagram of an example of a network forproviding alternative advertising content;

FIG. 2 is a flowchart illustrating an example of a process of providingalternative advertising content;

FIG. 3 is a flowchart illustrating another example of a process ofproviding alternative advertising content;

FIG. 4 is a block diagram of an example of a main advertisement andstaggered alternative advertisement for an advertising window; and

FIG. 5 is a block diagram of an example of a hardware configurationoperable to manage advertising content.

DETAILED DESCRIPTION

Referring to FIG. 1, an example network environment 100 for providingcontent from a content network 102 to a home or user network 104 via aprovider, access, or subscriber network 106, and for managingadvertising content viewed by customers in the home or user network.Content includes any type of video or audio media, such as movies,television shows, music, radio, advertisements, etc.

Content network 102 includes one or more content servers 108, one ormore over-the-top servers 109, and one or more advertisement servers110. The content, over-the-top, and advertisement servers store contentthat is provided to home network 104. Content server(s) 108 providecontent via a multiple system operator (MSO) and/or an internet serviceprovider. Over-the-top servers (OTT) 109 provide content only via overthe top streaming for at least one client device of the home network.Advertising server(s) 110 provide advertising content, such as targetedadvertising content.

Subscriber network 106 includes one or more Multiple System Operator(MSO) systems 112, which includes multiple cable TV systems and/ordirect satellite TV systems. For example, MSO system 112 may include oneor more headends, regional headends, a network architecture of fiberoptic, twisted pair, and/or co-axial lines, and/or amplifiers. In someembodiments, MSO system 112 includes an advertisement splice pointscomponent or apparatus 113, which includes software, hardware, and/orfirmware capable of inserting splice points in advertisements andalternative advertisements, such as the main advertisement and staggeredalternative advertisements discussed below. Subscriber network 112 alsoincludes one or more Internet Service Providers (ISP) 114. Each ISP 114includes a Point of Presence (POP) that connect to Network Access Points(NAP), such as via routers and a T3 backbone. In the example shown inFIG. 1, subscriber network 106 includes one or more network DigitalVideo Recorders (nDVRs) 116, which may be part of and/or separate fromMSO systems 112. Various content from content network 102 may berecorded and/or stored on nDVRs 116 based on requests made by users orsubscribers. Subscriber network 106 may include other components notexplicitly shown in FIG. 1, such as transcoders, streamers, just-in-time(JIT) packagers, etc.

Home/user network 104 includes a gateway 118, a set top box 120, userdevices 122, and an Internet Protocol (IP) set top box 124. Set top box120 is operable to connect to a television to deliver televisionservices through traditional terrestrial, satellite, and cable formats.Set top box 120 may include a digital video recorder (DVR) (not shown)and/or may have a graphic user interface (GUI) that may be assessed bythe user via the television to which set top box 120 is connected. Inother embodiments, the DVR may be separate from set top box 120. In someembodiments, set top box 120 may include an advertising managementcomponent or apparatus 121, which includes software, hardware, and/orfirmware that monitors splice points in advertisements and alternativeadvertisements and allows a customer or user to select alternativeadvertisements or additional alternative advertisements, such astargeted advertisements, during advertisement windows or periods.

User devices 122 may be any device that may receive content, such assmart phones, mobile phones, tablet computers, smart watches and otherwearables, gaming systems, etc. The user devices may have a GUI that maybe accessed by the user via the screen on the device. IP set top box 124is operable to connect to a television over the Internet instead ofbeing delivered through traditional terrestrial, satellite, and cableformats. The IP set top box may include a digital video recorder (DVR)(not shown) and/or may have a GUI that may be accessed by the user viathe television to which the IP set top box is connected. In otherembodiments, the DVR may be separate from IP set top box 124. In someembodiments, IP set top box 124 may include an advertising managementcomponent or apparatus 125, which includes software, hardware, and/orfirmware that monitors splice points in advertisements and alternativeadvertisements and allows a customer or user to select alternativeadvertisements or additional alternative advertisements, such astargeted advertisements, during advertisement windows or periods.

Referring to FIG. 2, a flowchart is shown of an example method orprocess 200 of providing alternative advertising content, which may beperformed, for example, by MSO system 112, gateway 118, set top box 120,IP set top box 124, and/or one or more their components, such asadvertising splice points component 113 and/or advertising managementcomponent 121 and/or 125. At 202, first TAD content is outputted duringa TAD window of multimedia content, such as via set top box 120 or IPset top box 124. Prior to 202, the customer may be tuned to the contentchannel and multimedia content from that channel may be outputted.During the TAD window of the multimedia content, the first TAD contentmay be outputted instead of the multimedia content from the contentchannel. The first TAD content may include one or more advertisementstargeted for the customer based, for example, on the customer's profile.The advertisements and the first TAD content may have a total durationthat is the same as the duration of the TAD window.

At 204, at least one user input is received during the TAD window fromthe customer requesting different TAD content, such as via the graphicaluser interface of set top box 120 or set top box 124, and/or a remotecontrol for the set top box or IP set top box. For example, thegraphical user interface of set top box 120 or set top box 124 mayinclude a “swap” or “switch” button to request different or alternativeTAD content. In some embodiments, the user can click or select thebutton multiple times during the TAD window to view one or morealternative TAD content. Alternatively, a menu item in the graphicaluser interface may be selected or highlighted to request alternative TADcontent.

At 206, different TAD content instead of the first TAD content isoutputted during the TAD window in response to the user input(s). Insome embodiments, the different TAD content may be outputted only afterone or more predetermined amounts of time from the start or beginning ofthe TAD window. For example, the different TAD content may include asecond TAD content and a third TAD content. The second TAD content maybe outputted only, for example, after a first predetermined amount oftime after the start of the TAD window and the third content may beoutputted only, for example, after a second predetermined amount of timeafter the start of the TAD window. The second predetermined amount oftime may be twice than the first predetermined amount of time, or may bemore or less than twice the first predetermined amount of time. Althoughthe different TAD content is described above to include second and thirdTAD content, other embodiments of method 200 may include different TADcontent that includes only second TAD content (and not third TADcontent), or includes fourth, fifth, sixth, or more TAD content whichmay be outputted after third, fourth, or fifth predetermined amounts oftime.

In some embodiments, one or more of the different TAD content may beoutputted based on when during the TAD window that the user input atstep 204 is received. For example, when user input is received beforethe first predetermined amount of time after the start of the TADwindow, the second TAD content may be outputted at 206. Additionally, oralternatively, when user input is received after the first predeterminedamount of time after the start of the TAD window but before the secondpredetermined amount of time after the start of the TAD window, thethird TAD content may be outputted at 206. The previously outputted TADcontent may be described as only being partially outputted because theentire duration of that previous TAD content was not outputted. In someembodiments, outputting may skip one or more of the different TADcontent, such as when user input is received after one or morepredetermined amount of times. For example, when user input is receivedonly after the first predetermined amount of time after the start of theTAD window but before the second predetermined amount of time after thestart of the TAD window, method 200 may skip over the second TAD contentand output the third TAD content instead of the first TAD contentwithout at least partially outputting the second TAD content.

Method 200 may, in some embodiments, include at 208, outputting thefirst TAD content instead of the different TAD content during the TADwindow in response to receiving user input requesting different TADcontent but the user input is received after the predetermined amount oftime associated with all of the different TAD content elapses. The firstTAD content may be outputted at a predetermined amount of time after thestart of the TAD window or may be outputted immediately after the userinput is received. The first TAD content is outputted or re-outputted ata point of the first TAD content that chronologically corresponds to theTAD window. In other words, outputting or re-outputting the first TADcontent at step 208 such that the first TAD content ends as plannedduring the TAD window. In the example above with the second and thirdTAD content, if user input is received after the second predeterminedamount of time (regardless of whether user input(s) where receivedbefore the second predetermined amount of time), then the first TADcontent is outputted. If the above user input is the only user inputreceived during the TAD window, then the first TAD content remainsoutputted. When the TAD window has ended, multimedia content from thecontent channel is outputted. Although FIG. 2 shows particular steps fora process of providing alternative advertising content, other examplesof the process may add, omit, replace, repeat, and/or modify one or moresteps.

Referring to FIG. 3, a flowchart is shown of another example method orprocess 250 of providing alternative advertising content, which may beperformed, for example, by MSO system 112 and/or one or more theircomponents, such as advertising splice points component 113. At 252, oneor more splice points are inserted in a main TAD for one or morealternative TADs. For example, a first splice point and a second splicepoint made be inserted in the main TAD for a first alternative TAD and asecond alternative TAD. The first alternative TAD may have a durationthat is the same as the duration of the main TAD from the first splicepoint to the end of the main TAD, while the second alternative TAD mayhave a duration that is the same as the duration of the main TAD fromthe second splice point to the end of the main TAD. In some embodiments,a third splice point may be inserted in the first alternative TAD forthe second alternative TAD, and/or a fourth splice point may be insertedin the second alternative TAD for the remaining portion of the main TAD.Additional splice points may be inserted in the main TAD and thealternative TADs as desired. At 254, the main TAD and the alternativeTAD(s) may be combined in one or more transport streams. Although FIG. 3shows particular steps for a process of providing alternativeadvertising content, other examples of the process may add, omit,replace, repeat, and/or modify one or more steps.

Referring to FIG. 4, a block diagram 300 that further illustratesmethods 200 and 300 is shown. A TAD window 302 includes a start 304 ofthe TAD window and an end 306 of the TAD window. A main TAD 308 isoutputted during TAD window 302 and has a duration that is the sameduration as the TAD window. In other words, main TAD 308 has a durationthat spans from the start and the end of the TAD window. However, otherembodiments may include two or more main TADs that have a collective ortotal duration that is the same duration as the TAD window. If a userinput is received during a first predetermined amount of time 310 fromstart 304 of TAD window 302 (or before the first predetermined amount oftime elapses), then first alternative TAD 312 is outputted at a firstmoment or point 314 of the TAD window, which is the moment or point whenthe first predetermined amount of time elapses and there is a firstsplice point in the main TAD to introduce the first alternative TAD. Thefirst alternative TAD has a duration that is the same duration of mainTAD 308 minus the first predetermined amount of time (or a duration thatis the same duration of the main TAD from first splice point 314 to end306 of main TAD 308). In other words, the first alternative TAD has astaggered start or beginning compared to the main TAD but would stillend at the same time as the main TAD.

If there is no other alternative TAD and user input is received afterfirst predetermined amount of time 310, then main TAD 308 is outputtedor re-outputted at a predetermined point during the TAD window based onwhen the user input is received. Alternatively, main TAD 308 may bere-outputted immediately after receiving the user input. There-outputting of the main TAD is at a point of the main TAD thatchronologically corresponds to the TAD window. In other words, when themain TAD is outputted or re-outputted, the main TAD will end as if themain TAD was the only TAD outputted.

If a user input is received after first predetermined amount of time 310and/or before a second predetermined amount of time 316 from start 304of TAD window 302 (or before the second predetermined amount of timeelapses), then second alternative TAD 318 is outputted at a secondmoment or point 320 of the TAD window, which is the moment or point whenthe second predetermined amount of time elapses and there is a secondsplice point in the main TAD or a splice point in the first alternativeTAD to introduce the second alternative TAD. The second alternative TADhas a duration that is the same duration of main TAD 308 minus thesecond predetermined amount of time (or a duration that is the sameduration of the main TAD from second splice point 320 to end 306 of mainTAD 308). In other words, the second alternative TAD has a staggeredstart or beginning compared to the main TAD and the first alternativeTAD but would still end at the same time as the main TAD and the firstalternative TAD. If there is no other alternative TAD and user input isreceived after second predetermined amount of time 316, then main TAD308 is outputted or re-outputted at a predetermined point during the TADwindow based on when the user input is received, as previouslydiscussed.

If a user input is received after second predetermined amount of time316 and/or before a third predetermined amount of time 322 from start304 of TAD window 302 (or before the third predetermined amount of timeelapses), then third alternative TAD 324 is outputted at a third momentor point 326 of the TAD window, which is the moment or point when thethird predetermined amount of time elapses and there is a third splicepoint in the main TAD, or a splice point in the first or secondalternative TAD, to introduce the third alternative TAD. The thirdalternative TAD has a duration that is the same duration of main TAD 308minus the third predetermined amount of time (or a duration that is thesame duration of the main TAD from third splice point 326 to end 306 ofmain TAD 308). In other words, the third alternative TAD has a staggeredstart or beginning compared to the main TAD and the first and secondalternative TAD but would still end at the same time as the main TAD andthe first and second alternative TADs. If there is no other alternativeTAD and user input is received after third predetermined amount of time322, then main TAD 308 is outputted or re-outputted at a predeterminedpoint during the TAD window based on when the user input is received, aspreviously discussed.

If a user input is received after third predetermined amount of time 322and/or before a fourth predetermined amount of time 328 from start 304of TAD window 302 (or before the fourth predetermined amount of timeelapses), then fourth alternative TAD 330 is outputted at a fourthmoment or point 332 of the TAD window, which is the moment or point whenthe fourth predetermined amount of time elapses and there is a fourthsplice point in the main TAD, or a splice point in the first, second, orthird alternative TAD, to introduce the fourth alternative TAD. Thefourth alternative TAD has a duration that is the same duration of mainTAD 308 minus the fourth predetermined amount of time (or a durationthat is the same duration of the main TAD from fourth splice point 332to end 306 of main TAD 308). In other words, the fourth alternative TADhas a staggered start or beginning compared to the main TAD and thefirst, second, and third alternative TADs but would still end at thesame time as the main TAD and the first, second, and third alternativeTADs. If there is no other alternative TAD and user input is receivedafter fourth predetermined amount of time 328, then main TAD 308 isoutputted or re-outputted at a predetermined point during the TAD windowbased on when the user input is received, as previously discussed.

As shown in FIG. 4, the main TAD and the first, second, third, andfourth alternative TADs progressively decrease in playout time durationbecause of the staggered starts of the alternative TADs. The TADs may bein the same transport stream or may be in two or more differenttransport streams. The first, second, third, and/or fourth predeterminedamounts of time are shown in FIG. 3 to have increasing durations, butthe amount of increase may be the same or different betweenpredetermined amounts of time. For example, the fourth predeterminedamount of time may be twice the second predetermined amount of time,which may be twice the first predetermined amount of time.Alternatively, the fourth predetermined amount of time may be less ormore than twice the second predetermined amount of time, which may bemore or less than twice the first predetermined amount of time so longas the duration of the alternative advertisements are the same as theduration of the main TAD minus the corresponding predetermined amount oftime.

As a specific example, the main TAD may be an advertisement for a sportsutility vehicle. The first alternative TAD may be an advertisement for asedan, while the second alternative TAD may be an advertisement for ahatchback. The third alternative TAD may be an advertisement for acouple, while the fourth alternative TAD may be an advertisement for avan. The above advertisements may be from the same advertiser or fromtwo or more different advertisers. Additionally, although the aboveadvertisements are advertisements for the same type of good (i.e.,vehicle), the above advertisements may be for different types of goodsand/or services.

Referring to FIG. 5, a hardware configuration 400 operable to facilitateautomatically updating shared content is shown. The hardwareconfiguration may be configured to implement or execute one or more ofthe processes performed by any of the various components, engines,modules, and devices described in the present disclosure, including MSOsystem 112, gateway 118, set top box 120, IP set top box 124, and/oradvertisement management components 121 and/or 125. The hardwareconfiguration 400 may include a processor 410, memory 420, a storagedevice 430, and an input/output device 440. Each of the components 410,420, 430, and 440 may, for example, be interconnected using a system bus450. The processor 410 may be capable of processing instructions forexecution within the hardware configuration 400. In one implementation,the processor 410 may be a single-threaded processor. In anotherimplementation, the processor 410 may be a multi-threaded processor. Theprocessor 410 may be capable of processing instructions stored in thememory 420 or on the storage device 430.

The memory 420 may store information within the hardware configuration400. In one implementation, the memory 420 may be a computer-readablemedium. In one implementation, the memory 420 may be a volatile memoryunit. In another implementation, the memory 420 may be a non-volatilememory unit. In some implementations, the storage device 430 may becapable of providing mass storage for the hardware configuration 400. Inone implementation, the storage device 430 may be a computer-readablemedium. In various different implementations, the storage device 430may, for example, include a hard disk device, an optical disk device,flash memory or some other large capacity storage device. In otherimplementations, the storage device 630 may be a device external to thehardware configuration 400.

The input/output device 440 provides input/output operations for thehardware configuration 400. In embodiments, the input/output device 440may include one or more of a network interface device (e.g., an Ethernetcard), a serial communication device (e.g., an RS-232 port), one or moreuniversal serial bus (USB) interfaces (e.g., a USB 2.0 port), one ormore wireless interface devices (e.g., an 802.11 card), and/or one ormore interfaces for outputting video and/or data services to a CPEdevice, IP device, mobile device, or other device. In embodiments, theinput/output device may include driver devices configured to sendcommunications to, and receive communications from an advertisementdecision system, an advertisement media source, and/or a CDN.

The methods, systems, and apparatuses described in this disclosureenable the identification and retrieval of one or more preferred orrequested media renditions of multimedia content. A subscriber devicemay maintain a list of media attributes preferred by the subscriberdevice and/or one or more users with access to the subscriber device,wherein the list includes preferred media attributes in order from themost requested/received attribute to the least requested/receivedattribute. When the subscriber device receives a request for multimediacontent, the subscriber device may identify one or more media attributespreferred by the subscriber, and media renditions of the multimediacontent in each of the identified attributes may be downloaded to thesubscriber device.

The subject matter of this disclosure, and components thereof, may berealized by instructions that upon execution cause one or moreprocessing devices to carry out the processes and functions describedabove. Such instructions may, for example, comprise interpretedinstructions, such as script instructions, e.g., JavaScript orECMAScript instructions, or executable code, or other instructionsstored in a computer readable medium.

Implementations of the subject matter and the functional operationsdescribed in this specification may be provided in digital electroniccircuitry, or in computer software, firmware, or hardware, including thestructures disclosed in this specification and their structuralequivalents, or in combinations of one or more of them. Embodiments ofthe subject matter described in this specification may be implemented asone or more computer program products, i.e., one or more modules ofcomputer program instructions encoded on a tangible program carrier forexecution by, or to control the operation of, data processing apparatus.

A computer program (also known as a program, software, softwareapplication, script, or code) may be written in any form of programminglanguage, including compiled or interpreted languages, or declarative orprocedural languages, and it may be deployed in any form, including as astand-alone program or as a module, component, subroutine, or other unitsuitable for use in a computing environment. A computer program does notnecessarily correspond to a file in a file system. A program may bestored in a portion of a file that holds other programs or data (e.g.,one or more scripts stored in a mark-up language document), in a singlefile dedicated to the program in question, or in multiple coordinatedfiles (e.g., files that store one or more modules, sub programs, orportions of code). A computer program may be deployed to be executed onone computer or on multiple computers that are located at one site ordistributed across multiple sites and interconnected by a communicationnetwork.

The processes and logic flows described in this specification areperformed by one or more programmable processors executing one or morecomputer programs to perform functions by operating on input data andgenerating output thereby tying the process to a particular machine(e.g., a machine programmed to perform the processes described herein).The processes and logic flows may also be performed by, and apparatusmay also be implemented as, special purpose logic circuitry, e.g., anFPGA (field programmable gate array) or an ASIC (application specificintegrated circuit).

Computer readable media suitable for storing computer programinstructions and data include all forms of non-volatile memory, mediaand memory devices, including by way of example semiconductor memorydevices (e.g., EPROM, EEPROM, and flash memory devices); magnetic disks(e.g., internal hard disks or removable disks); magneto optical disks;and CD ROM and DVD ROM disks. The processor and the memory may besupplemented by, or incorporated in, special purpose logic circuitry.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of anyinvention or of what may be claimed, but rather as descriptions offeatures that may be specific to particular embodiments of particularinventions. Certain features that are described in this specification inthe context of separate embodiments may also be implemented incombination in a single embodiment. Conversely, various features thatare described in the context of a single embodiment may also beimplemented in multiple embodiments separately or in any suitablesubcombination. Moreover, although features may be described above asacting in certain combinations and even initially claimed as such, oneor more features from a claimed combination may in some cases be excisedfrom the combination, and the claimed combination may be directed to asubcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various systemcomponents in the embodiments described above should not be understoodas requiring such separation in all embodiments, and it should beunderstood that the described program components and systems maygenerally be integrated together in a single software product orpackaged into multiple software products.

Particular embodiments of the subject matter described in thisspecification have been described. Other embodiments are within thescope of the claims below. For example, the actions recited in theclaims may be performed in a different order and still achieve desirableresults, unless expressly noted otherwise. As one example, the processesdepicted in the accompanying figures do not necessarily require theparticular order shown, or sequential order, to achieve desirableresults. In some implementations, multitasking and parallel processingmay be advantageous.

It will be appreciated that the invention is not restricted to theparticular embodiment that has been described, and that variations maybe made therein without departing from the scope of the invention asdefined in the appended claims, as interpreted in accordance withprinciples of prevailing law, including the doctrine of equivalents orany other principle that enlarges the enforceable scope of a claimbeyond its literal scope. Unless the context indicates otherwise, areference in a claim to the number of instances of an element, be it areference to one instance or more than one instance, requires at leastthe stated number of instances of the element but is not intended toexclude from the scope of the claim a structure or method having moreinstances of that element than stated. The word “comprise” or aderivative thereof, when used in a claim, is used in a nonexclusivesense that is not intended to exclude the presence of other elements orsteps in a claimed structure or method.

1. A method of providing alternative targeted advertising (TAD) content,comprising: outputting a first TAD content during a TAD window;receiving at least one user input requesting different TAD contentduring the TAD window; and outputting the different TAD content insteadof the first TAD content during the TAD window after at least onepredetermined amount of time from start of the TAD window in response tothe at least one user input.
 2. The method of claim 1, where thedifferent TAD content includes a second TAD content and a third TADcontent, the second TAD content is different from the first and thirdTAD content, and the third TAD content is different from the first andsecond TAD content, wherein outputting the different TAD content insteadof the first TAD content during the TAD window after at least onepredetermined amount of time from start of the TAD window in response tothe at least one user input includes outputting at least one of thesecond or third TAD content based on when the at least one user input isreceived during the TAD window.
 3. The method of claim 2, whereinoutputting at least one of the second or third TAD content based on whenthe at least one user input is received during the TAD window includesoutputting the second TAD content after a first predetermined amount oftime from start of the TAD window when the at least one user input isreceived before the first predetermined amount of time elapses.
 4. Themethod of claim 3, wherein outputting at least one of the second orthird TAD content based on when the at least one user input is receivedduring the TAD window includes outputting the third TAD content after asecond predetermined amount of time from start of the TAD window whenthe at least one user input is received before the second predeterminedamount of time elapses, the second predetermined amount of time beingmore than the first predetermined amount of time.
 5. The method of claim3, wherein outputting at least one of the second or third TAD contentbased on when the at least one user input is received during the TADwindow includes outputting the third TAD content instead of the firstTAD content after a second predetermined amount of time from start ofthe TAD window when the at least one user input is received after thefirst predetermined amount of time elapses but before the secondpredetermined amount of time elapses, the second predetermined amount oftime being more than the first predetermined amount of time.
 6. Themethod of claim 5, wherein the second predetermined amount of time istwice the first predetermined amount of time.
 7. The method of claim 5,wherein the second predetermined amount of time is more than twice thefirst predetermined amount of time.
 8. The method of claim 5, whereinthe second predetermined amount of time is less than twice the firstpredetermined amount of time.
 9. The method of claim 2, whereinreceiving at least one user input requesting different TAD contentduring the TAD window includes receiving a first user input requestingdifferent TAD content before a first predetermined amount of time fromstart of the TAD window, and receiving a second user input requestingdifferent TAD content before a second predetermined amount of time fromstart of the TAD window, the second predetermined amount of time beingmore than the first predetermined amount of time.
 10. The method ofclaim 9, wherein outputting at least one of the second or third TADcontent based on when the at least one user input is received during theTAD window includes outputting the second TAD content instead of thefirst TAD content after the first predetermined amount of time fromstart of the TAD window in response to the first user input andoutputting the third TAD content instead of the second TAD content afterthe second predetermined amount of time from start of the TAD window inresponse to the second user input.
 11. The method of claim 2, where thedifferent TAD content includes only the second and third TAD content,wherein receiving at least one user input requesting different TADcontent during the TAD window includes receiving a third user inputrequesting different TAD content after the second predetermined amountof time from start of the TAD window.
 12. The method of claim 11,further comprising re-outputting the first TAD content instead of thedifferent TAD content during the TAD window in response to the thirduser input.
 13. The method of claim 1, further comprising re-outputtingthe first TAD content instead of the different TAD content during theTAD window in response to receiving user input requesting different TADcontent when the predetermined amount of time associated with each ofthe different TAD content already has elapsed before receiving the userinput.
 14. A method of providing alternative advertising content,comprising: inserting one or more splice points in a main TAD for one ormore alternative TADs; and combining the main TAD and the one or morealternative TADs in at least one transport stream, wherein the one ormore alternative TADs each has a duration that is the duration of themain TAD from one splice point of the one or more splice points to theend of the main TAD.
 15. The method of claim 14, where the one or morealternative TADs include a first alternative TAD and a secondalternative TAD, wherein inserting one or more splice points in a mainTAD for one or more alternative TADs includes: inserting a first splicepoint in the main TAD for the first alternative TAD, wherein the firstalternative TAD has a duration that is the duration of the main TAD fromthe first splice point to the end of the main TAD; and inserting asecond splice point separate from the first splice point in the main TADfor the second alternative TAD, wherein the second alternative TAD has aduration that is the duration of the main TAD from the second splicepoint to the end of the main TAD.
 16. The method of claim 15, furthercomprising inserting a third splice point in the first alternative TADfor the second alternative TAD.
 17. The method of claim 16, where theone or more alternative TADs include only a first alternative TAD and asecond alternative TAD, further comprising inserting a fourth splicepoint in the second alternative TAD for a remaining portion of the mainTAD.
 18. The method of claim 15, wherein combining the main TAD and theone or more alternative TADs in a transport stream includes combiningthe main TAD, the first alternative TAD, and the second alternative TADin the transport stream.